package interfaces;

import java.util.List;

import modelos.Cartao;
import modelos.Cliente;
import modelos.Compra;
import modelos.Fatura;

public interface IFachada {

	//cartao
	Cartao salvarCartao(Cartao cartao);

	Cartao atualizarCartao(Cartao cartao);

	Cartao removerCartao(Cartao cartao);

	List<Cartao> listarCartao();
	
	Cartao getCartaoPorId(int id);
	
	Cartao getPorcpfDono(Cliente cliente);
	
	Cartao getPorNumero(String numero);
	//cartao
	
	//Cliente
	Cliente salvarCliente(Cliente cliente);

	Cliente atualizarCliente(Cliente cliente);

	Cliente removerCliente(Cliente cliente);

	List<Cliente> listarCliente();
	
	Cliente getClientePorId(int id);
	
	Cliente getPorcpf(String cpf) ;
	//Cliente
	
	//Compra
	Compra salvarCompra(Compra compra);

	Compra atualizarCompra(Compra compra);

	Compra removerCompra(Compra compra);

	List<Compra> listarCompra();
	
	Compra getCompraPorId(int id);
	//Compra
	
	//Fatura
	Fatura salvarFatura(Fatura fatura);

	Fatura atualizarFatura(Fatura fatura);

	Fatura removerFatura(Fatura fatura);

	List<Fatura> listarFatura();
	
	Fatura getFaturaPorId(int id);
	//Fatura
}
